#pragma once
#include <vector>
#include "GameTypedefs.h"
#include "IPhyShape.h"


/**
==================================
Physics Object has a shape(s) in which other
Physic objects can interact with; You would
attach a physics object to anything you would want to
have physics--duh!
==================================
*/
class PhysicsObject
{
public:
    PhysicsObject(void);

    /** Set the Position */
    void SetPosition( const MVector3f &p ){};
    MVector3f GetPosition(){return MVector3f();};

    ///** Attach a shape */
    //void AddShape( IPhyShape* p ) { m_shapeList.push_back( p ); };
    ///** Remove a shape */
    //void RemoveShape( IPhyShape* p ) { /*m_shapeList.remove( p );*/ };

    const type_ShapeList& GetShapes() const { return m_shapeList; };
    
private:
    type_ShapeList  m_shapeList;

public:
    virtual ~PhysicsObject(void);
};
